[% setvar title The Perl 6 Summary for the week ending 20040222 %]
<div id="archive-notice">
    <h3>This file is part of the Perl 6 Archive</h3>
    <p>To see what is currently happening visit <a href="http://www.perl6.org/">http://www.perl6.org/</a></p>
</div>
<div class='pod'>
<a name='The Perl 6 Summary for the week ending 20040222'></a><h1>The Perl 6 Summary for the week ending 20040222</h1>
<p>Welcome to the latest belated Perl 6 Summary. I'm running late, so we'll
just dive straight into perl6-internals</p>
<a name='Loading bytecode at runtime'></a><h2>Loading bytecode at runtime</h2>
<p>Last week Dan had specced out the rules for runtime loading of
bytecode. This week, Leo Tötsch started implementing it. There was a
certain amount of quibbling about syntax, but that was quickly sorted
out.</p>
<p><a href='http://groups.google.com/groups?selm=200402200842.i1K8g4F15344@thu8.leo.home' target='_blank'>groups.google.com</a></p>
<a name='Objects'></a><h2>Objects</h2>
<p>Dan continued his  work on objects and on  sorting out method resolution
niggles. Getting ahead of myself slightly, he finished it this week.</p>
<p><a href='http://groups.google.com/groups?selm=a06010208bc581095417f@' target='_blank'>groups.google.com</a>[172.24.18.98]</p>
<a name='Obfuscated Parrot'></a><h2>Obfuscated Parrot</h2>
<p>I reproduce this product of Leo Tötsch's warped brane without comment:</p>
<pre>     bounds 1
     trace 0
     split P0, '', &quot;\nrekcaH torraP rehtona tsuJ&quot;
     add I1, 3
     add I2, 4
     branch I2
     pack S23, 793, I1, I0
     branch I2
     add I2, 382, I1
     branch I2
     new S23, 911, I0, I0
     branch I1
     transcode S23, S0, -19
     end</pre>
<p>And, to compound things:</p>
<pre>    bounds 1
    trace 0
    newclass P0, &quot;Just another Parrot Hacker\n&quot;
    shift S0, P5
    does I0, P0, S0
    add I0, 4
    bsr I0
    pack S0, 381, I0, I0
    invoke
    ret</pre>
<p>Look, OO badness</p>
<p><a href='http://groups.google.com/groups?selm=40309141.1030003@toetsch.at' target='_blank'>groups.google.com</a></p>
<p><a href='http://groups.google.com/groups?selm=200402161324.i1GDOgu07546@thu8.leo.home' target='_blank'>groups.google.com</a></p>
<a name='IO fixes for Win32'></a><h2>IO fixes for Win32</h2>
<p>I must confess I didn't understand the details of the discussion, but
Goplat, Vladimir Lipsky and Melvin Smith spent some time working on IO
issues under Win32.</p>
<p><a href='http://groups.google.com/groups?selm=20040216191018.52351.qmail@web20809.mail.yahoo.com' target='_blank'>groups.google.com</a></p>
<a name='Parrot Dumper updated'></a><h2>Parrot Dumper updated</h2>
<p>Jens Rieks continued his sterling work on a Parrot Data::Dumper
equivalent, posting a new version that does bounds checking and PMC
property dumping. A later refinement added support for self referential
data structures and other edge cases.</p>
<p><a href='http://groups.google.com/groups?selm=200402161908.40001.parrot@jensbeimsurfen.de' target='_blank'>groups.google.com</a></p>
<a name='ConfigScript3'></a><h2>ConfigScript3</h2>
<p>TOGoS announced a new language targetting Parrot.</p>
<p><a href='http://groups.google.com/groups?selm=20040217011132.40119.qmail@web41411.mail.yahoo.com' target='_blank'>groups.google.com</a></p>
<p><a href='http://togos.dhs.org/projects/configscript3/' target='_blank'>togos.dhs.org</a></p>
<a name='Symbol naming and IMCC2'></a><h2>Symbol naming and IMCC2</h2>
<p>Dan ruled on the symbol naming issue discussion. Essentially, if your
symbol includes a sigil, you're not going to be able to use it
directly. Learn to love symbol tables and <code>.alias</code>.</p>
<p><a href='http://groups.google.com/groups?selm=a06010209bc58266e6075@' target='_blank'>groups.google.com</a>[172.24.18.98]</p>
<a name='TODO: parrotbug'></a><h2>TODO: <code>parrotbug</code></h2>
<p>Dan asked for someone to implement a <code>parrotbug</code> script to handle
building and possibly sending the bug reports into RT. The script
should work in a similar way to perlbug, appending configuration
information etc to any bug report.</p>
<p><a href='http://groups.google.com/groups?selm=a0601020cbc5838c4acab@' target='_blank'>groups.google.com</a>[172.24.18.98]</p>
<a name='TODO: Forth as a compiler'></a><h2>TODO: Forth as a compiler</h2>
<p>Dan asked for a volunteer to fix <b><i>forth.pasm</i></b> so that it can be loaded
in as a compiler module, allowing one to do:</p>
<pre>    compile P5, ForthCompiler, &quot;1 2 + .&quot;</pre>
<p>and have it print out 3.</p>
<p><a href='http://groups.google.com/groups?selm=a06010201bc5a61a7ddc0@' target='_blank'>groups.google.com</a>[10.0.1.2]</p>
<a name='Documentation tasks'></a><h2>Documentation tasks</h2>
<p>Taking time out to heap praise on the deserving Michael Scott, Dan
outlined a few documentation jobs that need to be done (hopefully)
before the next Parrot release.</p>
<p><a href='http://groups.google.com/groups?selm=a06010207bc5a93a41f3d@' target='_blank'>groups.google.com</a>[10.0.1.2]</p>
<a name='SDL goodness'></a><h2>SDL goodness</h2>
<p>The work on SDL support continued apace, with chromatic checking in
several SDL related fixes and enhancements.</p>
<p><a href='http://groups.google.com/groups?selm=1077165919.24319.72.camel@localhost' target='_blank'>groups.google.com</a></p>
<p><a href='http://groups.google.com/groups?selm=1077166499.24310.78.camel@localhost' target='_blank'>groups.google.com</a></p>
<a name='Parrot Day at the Austrian Perl Workshop'></a><h2>Parrot Day at the Austrian Perl Workshop</h2>
<p>Thomas Klausner announced that this year's Austrian Perl Workshop would
have a Parrot Day, with a tutorial from Leo Tötsch and hopefully some
other good stuff from Parrot luminaries. Thomas also asked for people
to submit talk ideas.</p>
<p><a href='http://groups.google.com/groups?selm=20040220015102.GL2974@zsi.at' target='_blank'>groups.google.com</a></p>
<p><a href='http://vienna.pm.org/en_workshop.html' target='_blank'>vienna.pm.org</a></p>
<a name='SDL + Parrot = Tetris'></a><h2>SDL + Parrot = Tetris</h2>
<p>Jens Rieks announced the alpha of an implementation of tetris in Parrot
using SDL for the display. Yay Jens! Mmm... a time sink... just what
the Parrot developers need.</p>
<p><a href='http://groups.google.com/groups?selm=200402200407.43622.parrot@jensbeimsurfen.de' target='_blank'>groups.google.com</a></p>
<a name='The First International Workshop on Interpreted Languages'></a><h2>The First International Workshop on Interpreted Languages</h2>
<p>Dan pointed  us all at the First International Workshop on Interpreted
Languages' Call for Papers.</p>
<p><a href='http://groups.google.com/groups?selm=a06010207bc5c09cf7874@' target='_blank'>groups.google.com</a>[10.0.1.2]</p>
<p><a href='http://www.sebastian-bergmann.de/InterpretedLanguages2004/' target='_blank'>www.sebastian-bergmann.de</a></p>
<a name='Meanwhile, in perl6-languages'></a><h1>Meanwhile, in perl6-languages</h1>
<a name='Traits/Roles'></a><h2>Traits/Roles</h2>
<p>I know I've had this feeling of déjà vu before, but I've spelt it
right this time. Discussion of Roles continued this week. If I never
read another discussion of the difference between <code>Dog::bark</code> and
<code>Tree::bark</code> again, it'll be too soon.</p>
<a name='The Sort Problem'></a><h2>The Sort Problem</h2>
<p>The other topic of discussion this week covered sorting. It looks as
though Perl 6's <code>sort</code> function is going to be rather more powerful
than the Perl 5 equivalent; hopefully this means Perl 6 will finally
see the back of code like:</p>
<pre>    map  { $_-&gt;[0] }
    sort { $a-&gt;[1] &lt;=&gt; $a-&gt;[1] }
    map  { [$_, extract_key_from($_) } @array</pre>
<p>Damian's post on the subject, referenced below, looks like the front
runner. It's worth reading if you're interested in sort itself or if
you're interested in how Perl 6's multi dispatch will work.</p>
<p><a href='http://groups.google.com/groups?selm=402FF9E1.90403@conway.org' target='_blank'>groups.google.com</a></p>
<a name='Allison Randal is the new Project Manager'></a><h2>Allison Randal is the new Project Manager</h2>
<p>Nat Torkington announced that he's managed to pass the Perl 6
Project Manager hat on to Allison Randal's increasingly be-hatted
head. Congratulations and commiserations to Nat and Allison. I'll leave
it up to you to decide who gets which.</p>
<p><a href='http://groups.google.com/groups?selm=94D27CCA-6319-11D8-811E-0003938ADEFE@oreilly.com' target='_blank'>groups.google.com</a></p>
<a name='Announcements, Apologies, Acknowledgements'></a><h1>Announcements, Apologies, Acknowledgements</h1>
<p>Um... I'm late. Sorry.</p>
<p>If you find these summaries useful or enjoyable, please consider
contributing to the Perl Foundation to help support the development of
Perl. You might also like to send me feedback at
mailto:<a href='mailto:p6summarizer@bofh.org.uk'>p6summarizer@bofh.org.uk</a>, or drop by my website.</p>
<p><a href='http://donate.perl-foundation.org/' target='_blank'>donate.perl-foundation.org</a> -- The Perl Foundation</p>
<p><a href='http://dev.perl.org/perl6/' target='_blank'>dev.perl.org</a> -- Perl 6 Development site</p>
<p><a href='http://www.bofh.org.uk/' target='_blank'>www.bofh.org.uk</a> -- My website, &quot;Just a Summary&quot;</p>
</div>
